package cn.hlyc.config;

import cn.hlyc.filter.TimeFilter;
import org.springframework.cloud.gateway.route.RouteLocator;
import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class FilterConfig {
    //配置Filter作用于那个访问规则上
    @Bean
    public RouteLocator customerRouteLocator(RouteLocatorBuilder builder) {

        return builder.routes().route(r -> r.path("/user/**")
                //去掉2个前缀
                .filters(f -> f.stripPrefix(1)
                        .filter(new TimeFilter()))
                .uri("lb://user-service")
                .order(0)
                .id("test-RequestTimeFilter")
        ).build();
    }
}
